From: Giovanni Campagna Date: Wed, 3 Oct 2012 21:15:41 +0000 (+0200) Subject: UnlockDialog: reset UI on verification failure X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~1013^2^2~5614 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=99f97adfc6815c9c0e831994dcbc63a5051af7fe;p=gnome-shell.git UnlockDialog: reset UI on verification failure When failing verification, reset the UI to the default pre-password request state, waiting for the next prompt. https://bugzilla.gnome.org/show_bug.cgi?id=685441 --- diff --git a/js/ui/unlockDialog.js b/js/ui/unlockDialog.js index 5ee43871c..7b3018265 100644 --- a/js/ui/unlockDialog.js +++ b/js/ui/unlockDialog.js @@ -128,6 +128,7 @@ const UnlockDialog = new Lang.Class({ this._userVerifier.connect('ask-question', Lang.bind(this, this._onAskQuestion)); this._userVerifier.connect('show-message', Lang.bind(this, this._showMessage)); this._userVerifier.connect('verification-complete', Lang.bind(this, this._onVerificationComplete)); + this._userVerifier.connect('verification-failed', Lang.bind(this, this._onVerificationFailed)); this._userVerifier.connect('reset', Lang.bind(this, this._onReset)); this._userVerifier.connect('show-login-hint', Lang.bind(this, this._showLoginHint)); @@ -274,6 +275,16 @@ const UnlockDialog = new Lang.Class({ this.emit('failed'); }, + _onVerificationFailed: function() { + this._currentQuery = null; + this._firstQuestion = true; + + this._promptEntry.clutter_text.set_password_char('\u25cf'); + this._promptEntry.menu.isPassword = true; + + this._updateSensitivity(false); + }, + _escape: function() { this._userVerifier.cancel(); this.emit('failed');